#include <iostream>
#include <vector>
using namespace std;
const int N=1e5+10;

int son[N*32][2],idx;
void insert(int num)
{
	int p=0;
	for(int i=22;i>=0;i--)
	{
		int t=num>>i&1;
		if(!son[p][t])
			son[p][t]=++idx;
		p=son[p][t];
	}
}
int query(int num)
{
	int p=0;
	int ret=0;
	for(int i=22;i>=0;i--)
	{
		int t=num>>i&1;
		if(son[p][!t])
		{
			ret|=1<<i;
			p=son[p][!t];
		}
		else{
			p=son[p][t];
		}
//		cout<<ret<<endl;
	}
	return ret;
}
int main()
{
	int n;
	cin>>n;
	idx=0;
	
	for(int i=0;i<n;i++)
	{
		int t;
		cin>>t;
		insert(t);
	}
	int q;
	cin>>q;
	while(q--)
	{
		int num;
		cin>>num;

		cout<<query(num)<<endl;
	}
	
	return 0;
}

